package com.clarence.dada.modular.system.dict.service;

import com.clarence.dada.core.base.PageResult;
import com.baomidou.mybatisplus.extension.service.IService;
import com.clarence.dada.modular.system.dict.entity.SysDictEntity;
import com.clarence.dada.modular.system.dict.entity.req.DictReq;
import com.clarence.dada.modular.system.dict.entity.resp.SysDictResp;

import java.util.List;

/**
 * 字典管理
 *
 * @author GD
 * @since 2020/10/29 17:43
 */
public interface DictService extends IService<SysDictEntity> {

    /**
     * 新增字典
     *
     * @param req 字典对象
     * @author GD
     * @since 2020/10/29 17:43
     */
    void dictAdd(DictReq req);

    /**
     * 删除字典
     *
     * @param req 字典对象
     * @author GD
     * @since 2020/10/29 17:43
     */
    void dictDelete(DictReq req);

    /**
     * 修改字典
     *
     * @param req 字典对象
     * @author GD
     * @since 2020/10/29 17:43
     */
    void dictEdit(DictReq req);

    /**
     * 查询字典详情
     *
     * @param req 字典id
     * @return 字典的详情
     * @author GD
     * @since 2020/10/30 16:15
     */
    SysDictResp dictDetail(DictReq req);

    /**
     * 获取字典列表
     *
     * @param req 字典对象
     * @return 字典列表
     * @author GD
     * @since 2020/10/29 18:48
     */
    List<SysDictResp> dictList(DictReq req);

    /**
     * 获取字典列表（带分页）
     *
     * @param req 查询条件
     * @return 带分页的列表
     * @author GD
     * @since 2020/10/29 18:48
     */
    PageResult<SysDictResp> dictPage(DictReq req);

//    /**
//     * 获取树形字典列表
//     *
//     * @param dictReq 查询条件
//     * @return 字典信息列表
//     * @author GD
//     * @since 2020/10/29 18:50
//     */
//    List<TreeDictInfo> getTreeDictList(DictReq req);


}
